package online.heycm.rbac.domain.user.repository.entity;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * 用户认证表
 *
 * @author heycm
 * @since 2024-01-11
 */
@Data
@TableName("user_authorize")
public class UserAuthorize implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 用户id
     */
    private Integer userId;

    /**
     * 认证类型：1-账密登录 2-短信登录 3-微信登录 4...
     */
    private Integer authType;

    /**
     * 认证标识：账户/手机号...
     */
    private String authIdentifier;

    /**
     * 认证秘钥：密码/短信/三方id...
     */
    private String authCredential;

    /**
     * 加密盐值
     */
    private String authSalt;

    /**
     * 授权token
     */
    private String authToken;

    /**
     * 上次认证时间
     */
    private Date loginTime;

    @TableField(fill = FieldFill.INSERT)
    private Date createdAt;
}
